home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-09-16 | 7.5 KB | 322 lines | [TEXT/MPS ] |
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: SLRefCnt.xih.
- * Generated using:
- * SOM Precompiler somipc: 2.18
- * SOM Emitter emitxih.dll: 2.33
- */
-
- /*
- *
- * File: SLRefCnt.idl
- *
- * Contains: Interface for FW_ORefCount class
- * Release Version: $ ODF 2 $
- *
- * Copyright: (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
- *
- */
-
-
- #ifndef SOM_FW_ORefCount_xih
- #define SOM_FW_ORefCount_xih
-
- #include <somcls.xh>
- #include <somcm.xh>
-
- /*
- * Passthru lines: File: "C.xih", "before"
- */
-
-
- #ifndef SOM_FW_ORefCount_xh
- #include <SLRefCnt.xh>
- #endif
-
- /*
- * Set the scope of methods functions
- */
- #ifndef SOM_Scope
- #define SOM_Scope extern "C"
- #endif
-
- #define FW_ORefCount_MaxNoMethods 3
-
- /*
- * -- Instance Data
- */
-
- /*
- * -- Use best possible alignment for instance data slice.
- */
- #if PRAGMA_ALIGN_SUPPORTED
- # pragma options align=power
- #endif
- typedef struct FW_ORefCountData {
- long fRefCount;
- } FW_ORefCountData;
- #if PRAGMA_ALIGN_SUPPORTED
- # pragma options align=reset
- #endif
-
- /*
- * -- Getdata Macro
- */
-
- /*
- * -- This emitter treats Data Tokens as Thunks by default.
- * -- Use the sc modifier "nothunks" to override this default.
- */
- SOMEXTERN typedef FW_ORefCountData* (* SOMLINK somTD_FW_ORefCount_DataThunk)(void*);
- #define FW_ORefCountGetData(somSelf) \
- (((somTD_FW_ORefCount_DataThunk)(FW_ORefCountClassData.instanceDataToken))(somSelf))
-
- /*
- * -- Instance Data Access Macros for use in Method Procedures
- */
- #ifdef VARIABLE_MACROS
- #define _fRefCount (somThis->fRefCount)
- #endif
-
-
- /*
- * Trace/Debug macro
- */
- #ifndef FW_ORefCountMethodDebug
- #define FW_ORefCountMethodDebug(c,m) SOMMethodDebug(c,m)
- #endif
-
- /*
- * -- Method Macros for use in Method Procedures
- */
- #ifdef METHOD_MACROS
- #define _somInit somSelf->somInit
- #define _somUninit somSelf->somUninit
- #define _somDuplicateReference somSelf->somDuplicateReference
- #define _somCompareReference somSelf->somCompareReference
- #define _somRelease somSelf->somRelease
- #define _somFree somSelf->somFree
- #define _somCanDelete somSelf->somCanDelete
- #define _somGetClass somSelf->somGetClass
- #define _somGetClassName somSelf->somGetClassName
- #define _somGetSize somSelf->somGetSize
- #define _somIsA somSelf->somIsA
- #define _somRespondsTo somSelf->somRespondsTo
- #define _somIsInstanceOf somSelf->somIsInstanceOf
- #define _somDispatch somSelf->somDispatch
- #define _somClassDispatch somSelf->somClassDispatch
- #define _somCastObj somSelf->somCastObj
- #define _somResetObj somSelf->somResetObj
- #define _somPrintSelf somSelf->somPrintSelf
- #define _somDumpSelf somSelf->somDumpSelf
- #define _somDumpSelfInt somSelf->somDumpSelfInt
- #define _Acquire somSelf->Acquire
- #define _Release somSelf->Release
- #define _GetRefCount somSelf->GetRefCount
- #define _somInit somSelf->somInit
- #define _somUninit somSelf->somUninit
- #endif
-
-
- /*
- * Introduced methods
- */
-
- /* New Method: Acquire */
- SOM_Scope void SOMLINK FW_ORefCountAcquire(FW_ORefCount *somSelf, Environment *ev);
-
- /* New Method: Release */
- SOM_Scope long SOMLINK FW_ORefCountRelease(FW_ORefCount *somSelf, Environment *ev);
-
- /* New Method: GetRefCount */
- SOM_Scope long SOMLINK FW_ORefCountGetRefCount(FW_ORefCount *somSelf, Environment *ev);
-
- /*
- * Overridden methods
- */
-
- /* Overridden method: somInit */
- SOM_Scope void SOMLINK FW_ORefCountsomInit(FW_ORefCount *somSelf);
- SOMEXTERN typedef void (* SOMLINK somTD_xih_FW_ORefCount_somInit)(FW_ORefCount *somSelf);
- inline void SOMLINK FW_ORefCount_parent_SOMObject_somInit(FW_ORefCount *somSelf)
- {
- (void) (somSelf);
- }
- #define FW_ORefCount_parents_somInit(arg0) \
- (void) FW_ORefCount_parent_SOMObject_somInit(arg0)
-
- /* Overridden method: somUninit */
- SOM_Scope void SOMLINK FW_ORefCountsomUninit(FW_ORefCount *somSelf);
- SOMEXTERN typedef void (* SOMLINK somTD_xih_FW_ORefCount_somUninit)(FW_ORefCount *somSelf);
- inline void SOMLINK FW_ORefCount_parent_SOMObject_somUninit(FW_ORefCount *somSelf)
- {
- (void) (somSelf);
- }
- #define FW_ORefCount_parents_somUninit(arg0) \
- (void) FW_ORefCount_parent_SOMObject_somUninit(arg0)
-
- /*
- * -- Primary Implementation File Support
- */
- #if (defined(FW_ORefCount_Class_Source) || defined(SOM_Module_slrefcnt_Source))
-
- /*
- * -- The FW_ORefCount ClassData Structure
- */
-
- #if PRAGMA_IMPORT_SUPPORTED
- #pragma export list FW_ORefCountClassData
- #endif
-
-
- /*
- * -- The FW_ORefCount Class Ancestor Table
- */
- static somClassDataStructure * SOMDLINK FW_ORefCountClassAncestors [] = {
- (somClassDataStructure*) & SOMObjectClassData, /* parent */
- };
-
-
- /*
- * -- The FW_ORefCount Override ProcPtr Implementations Table
- */
- static somMethodPtr FW_ORefCountOverrideProcs [] = {
- (somMethodPtr) FW_ORefCountsomInit, /* override class SOMObject */
- (somMethodPtr) FW_ORefCountsomUninit, /* override class SOMObject */
- };
-
-
- static void FW_ORefCountDLLD ( void ) { }
-
-
- /*
- * -- The FW_ORefCount Static Class Info Master Table
- */
- static somStaticClassInfo FW_ORefCountSCI = {
- 70, /* layout version */
- (somClassDataStructure*) & FW_ORefCountClassData, /* main token table */
- FW_ORefCountOverrideProcs, /* override proc implemenations table */
- FW_ORefCountClassAncestors, /* ancestor table */
- FW_ORefCountDLLD, /* DLLdesignator */
- 0, /* no special procs */
- 0, /* rtci slot */
- 0, /* count slot */
- 0, /* dynamic ancestry */
- 0, /* free */
- 0, /* free */
- 0, /* free */
- 0, /* free */
-
- /*
- * -- The FW_ORefCount Counts Table
- */
- (somStaticClassCounts *)
- "\x00\x00\x00\x01" /* majorversion */
- "\x00\x00\x00\x00" /* minorversion */
- "\x00\x00\x00\x01" /* flags */
- "\x00\x02" /* type code alignment */
- "\x00\x05" /* classTokenCount */
- "\x00\x01" /* numDirectParents */
- "\x00\x00" /* numMetaClasses */
- "\x00\x01" /* numOverriddenAncestors */
- "\x00\x00" /* numMigratedMethods */
- "\x00\x00" /* numSelectedInherited */
- "\x00\x00" /* numUnused */
- "\x00\x00" /* free */
- "\x00\x00" /* free */
- "\x00\x00" /* free */
- "\x00" /* free */
- ,
-
- {
- "FW_ORefCount", /* the class name */
- sizeof (FW_ORefCountData), /* class instance data size */
-
- /*
- * -- The FW_ORefCount Parent Versions Table
- */
- (somParentVersions *)
- "\x00\x00\x00\x46" /* majorversion */
- "\x00\x00\x00\x01" /* minorversion */
- ,
-
-
- /*
- * -- The FW_ORefCount Token Slot Usage Table
- */
- (somSlotUsage *)
- "\x33\x00",
-
-
- /*
- * -- The FW_ORefCount Method Signature Info
- */
- (somSignatureInfo *)
- "\x02\x07" /* Acquire */
- "\x02\x05" /* Release */
- "\x02\x05" /* GetRefCount */
- ,
-
-
- /*
- * -- The FW_ORefCount Class Method Names
- */
- "somInit\0"
- "somUninit\0"
- "Acquire\0"
- "Release\0"
- "GetRefCount\0"
- ,
-
-
- /*
- * -- The FW_ORefCount Override Slots Table
- */
- (somOverrideData *)
- "\x00\x00\x00\x02" /* parent SOMObject has 2 overrides */
- "\x00\x00" /* somInit */
- "\x00\x01" /* somUninit */
- ,
-
- 0, /* no migrated methods table */
- 0, /* no selected inherited */
- 0, /* unused */
-
- 0, /* free */
- 0, /* free */
- 0, /* free */
- 0, /* free */
- },
- };
-
- /*
- * -- The FW_ORefCount ClassData Structure
- */
- struct FW_ORefCountClassDataStructure SOMDLINK FW_ORefCountClassData = {
- 0, /* zero */
- & FW_ORefCountSCI, /* SCI link */
- 0, /* instanceDataToken */
- 0, /* reserved */
- 0, /* reserved */
- 0, /* reserved */
- (somMToken) 0, /* somInit:empty */
- (somMToken) 0, /* somUninit:empty */
- (somMToken) FW_ORefCountAcquire, /* Acquire:method */
- (somMToken) FW_ORefCountRelease, /* Release:method */
- (somMToken) FW_ORefCountGetRefCount, /* GetRefCount:method */
- };
-
-
- /*
- * Functions for attributes.
- */
-
- /*
- * Macros for initializers/destructors
- */
-
- #endif /* Primary Implementation Support */
-
- #endif /* SOM_FW_ORefCount_xih */
-